export interface QuickSearchTag {
/** 标签类型 */
  type: string
  /** 标签显示文本 */
  label: string
  /** 标签背景颜色 */
  bgColor?: string
  /** 标签文字颜色 */
  textColor?: string
  /** 悬停背景颜色 */
  hoverBgColor?: string
  /** 标签样式类 */
  className?: string
  /** 标签计数 */
  count?: number
  /** 匹配条件 */
  matchCondition?: (item: any) => boolean
}

export interface SearchBoxProps {
  /**
   * 搜索框唯一ID
   */
  id: string
  /**
   * 占位文本
   */
  placeholder?: string
  /**
   * 是否显示快捷搜索标签
   */
  showQuickSearch?: boolean
  /**
   * 快捷搜索标签配置
   */
  quickSearchTags?: QuickSearchTag[]
  /**
   * 搜索防抖时间(毫秒)
   */
  debounceTime?: number
  /**
   * 搜索回调函数
   */
  onSearch?: (value: string, QuickSearch: boolean) => void
  /**
   * 快捷标签点击回调
   */
  onQuickTagClick?: (type: string) => void
}

export const DEFAULT_SEARCH_BOX_PROPS: Partial<SearchBoxProps> = {
  placeholder: '搜索...',
  showQuickSearch: false,
  quickSearchTags: [],
  debounceTime: 300,
}
